package org.zkoss.zktc.core.widget;

import java.util.List;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;

public interface WidgetDriver {

	public WebDriver getDelegate();
	
	public long getTimeout();
	
	public void navigate(String url);
	public void quit();
	
	public WebElement findElement(String selector);
	public WebElement findElement(String selector,long timeout);
	public List<WebElement> findElements(String selector);
	public List<WebElement> findElements(String selector,long timeout);

	public long getTripId();
	public void waitForTrip(int trip, long timeout);
	
	public void waitForReady(long timeout);
	public void waitForReady();
//	public void waitForModule(String module, long timeout);
	
	public Widget findWidget(String selector);
	public Widget findWidget(String selector,long timeout);
	public Widget findWidget(String selector,boolean strict);
	public Widget findWidget(String selector,boolean strict,long timeout);
	
	public List<Widget> findWidgets(String selector);
	public List<Widget> findWidgets(String selector,boolean strict);
	public List<Widget> findWidgets(String selector,boolean strict,long timeout);

	
}
